﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using LEDControllerTools.Controller;

namespace LEDControllerTools.Scripting
{
    [Serializable]
    public class TestScript : IScript
    {
        public void Run(IControllable cont)
        {
            cont["A1"].On();
            cont.Wait(200);
            cont["A2"].On();
            cont.Wait(200);
            cont["A3"].On();
            cont.Wait(200);
            cont["A4"].On();
            cont.Wait(200);
            cont["A5"].On();
            cont.Wait(200);
            cont["A6"].On();
            cont.Wait(200);
            cont["A7"].On();
            cont.Wait(200);
            cont["A1"].Off();
            cont.Wait(200);
            cont["A2"].Off();
            cont.Wait(200);
            cont["A3"].Off();
            cont.Wait(200);
            cont["A4"].Off();
            cont.Wait(200);
            cont["A5"].Off();
            cont.Wait(200);
            cont["A6"].Off();
            cont.Wait(200);
            cont["A7"].Off();

            cont.Wait(200);
            cont["B1"].On();
            cont.Wait(200);
            cont["B2"].On();
            cont.Wait(200);
            cont["B3"].On();
            cont.Wait(200);
            cont["B4"].On();
            cont.Wait(200);
            cont["B5"].On();
            cont.Wait(200);
            cont["B6"].On();
            cont.Wait(200);
            cont["B7"].On();
            cont.Wait(200);
            cont["B1"].Off();
            cont.Wait(200);
            cont["B2"].Off();
            cont.Wait(200);
            cont["B3"].Off();
            cont.Wait(200);
            cont["B4"].Off();
            cont.Wait(200);
            cont["B5"].Off();
            cont.Wait(200);
            cont["B6"].Off();
            cont.Wait(200);
            cont["B7"].Off();

            cont.Wait(200);
            cont["C1"].On();
            cont.Wait(200);
            cont["C2"].On();
            cont.Wait(200);
            cont["C3"].On();
            cont.Wait(200);
            cont["C4"].On();
            cont.Wait(200);
            cont["C5"].On();
            cont.Wait(200);
            cont["C6"].On();
            cont.Wait(200);
            cont["C7"].On();
            cont.Wait(200);
            cont["C1"].Off();
            cont.Wait(200);
            cont["C2"].Off();
            cont.Wait(200);
            cont["C3"].Off();
            cont.Wait(200);
            cont["C4"].Off();
            cont.Wait(200);
            cont["C5"].Off();
            cont.Wait(200);
            cont["C6"].Off();
            cont.Wait(200);
            cont["C7"].Off();

            cont.Wait(200);
            cont["D1"].On();
            cont.Wait(200);
            cont["D2"].On();
            cont.Wait(200);
            cont["D3"].On();
            cont.Wait(200);
            cont["D4"].On();
            cont.Wait(200);
            cont["D5"].On();
            cont.Wait(200);
            cont["D6"].On();
            cont.Wait(200);
            cont["D7"].On();
            cont.Wait(200);
            cont["D1"].Off();
            cont.Wait(200);
            cont["D2"].Off();
            cont.Wait(200);
            cont["D3"].Off();
            cont.Wait(200);
            cont["D4"].Off();
            cont.Wait(200);
            cont["D5"].Off();
            cont.Wait(200);
            cont["D6"].Off();
            cont.Wait(200);
            cont["D7"].Off();
            cont.Wait(200);
        }


    }
}
